package negocio.java;

import java.util.List;

import dao.java.BBDDCliente;
import dao.java.ClienteObj;

public class ReglasCliente implements InterfazCliente {
	// private BBDDCliente bdCliente = new BBDDCliente();

	private InterfazCliente bdCliente = new BBDDCliente();

	ReglasCliente(InterfazCliente dao) {
		bdCliente = dao;
	}

	public ReglasCliente() {
		bdCliente = new BBDDCliente();
	}

	public List<ClienteObj> ConsultaCliente(String columna, String valor)
			throws MiExcepcion {
		return bdCliente.ConsultaCliente(columna, valor);
	}

	public ClienteObj ConsultaAvanzada(int idcliente) throws MiExcepcion {
		ClienteObj result;
		try {
			result = bdCliente.ConsultaAvanzada(idcliente);
		} catch (Exception e) {
			throw new IllegalArgumentException(e);
		}
		// return bdCliente.ConsultaAvanzada(idcliente);
		return result;
	}

	public List<ClienteObj> exportarCliente() throws MiExcepcion {
		return bdCliente.exportarCliente();
	}

	public void AgregarCliente(ClienteObj c) throws MiExcepcion {
		bdCliente.AgregarCliente(c);
	}

	public void ActualizarCliente(int tipoConsulta, ClienteObj modificaciones)
			throws MiExcepcion {
		bdCliente.ActualizarCliente(tipoConsulta, modificaciones);
	}
}
